//
// Created by 32827 on 2024/1/10.
//

#ifndef STM32OSCOVER_YZ_CONF_H
#define STM32OSCOVER_YZ_CONF_H
#include "yzdef.h"

#define YZF_CHECK ON
#define YZF_HAL OFF
#define YZ_USE_DEFAULT_CLOCK OFF

#define YZ_CONF_CLOCK_FREQ (240*1000*1000)

#define YZ_COLOR_MODE YZ_COLOR_MODE_RGB565
#define YZ_SCREEN_DRIVER YZ_SCREEN_DRIVER_TLI4384
#define YZ_SCREEN_TOUCH_DRIVER YZ_SCREEN_TOUCH_DRIVER_GT911
#define YZ_SCREEN_MAX_TOUCH 5
#define YZ_SCREEN_HEIGHT 480
#define YZ_SCREEN_WIDTH 800
#define YZL_FONT_SRAM_SIZE 10   //Font SRAM

#define YZL_UI_WIDGET_DATA_SRAM_SIZE (8*4)     //void *的大小
#define YZL_UI_VIEW_DEEP_MAX 10

#define YZ_RECV_TRANSMIT_LEW_LIGHT yzf_gpio_set_0(GPIOB, YZF_GPIO_PIN_11)
#define YZ_RECV_TRANSMIT_LEW_DARK yzf_gpio_set_1(GPIOB,YZF_GPIO_PIN_11)

///YZ LIB MemManger
#define YZ_MEM_BLOCK_MAX_COUNT 128

///----------------- SDRAM ADDRESS LIST -------------------
///ALL SIZE:32MB
#define YZ_SDRAM_BASE_ADDR 0xC0000000
#define YZ_SDRAM_FreeRTOS_MANAGER_RAM_BASE YZ_SDRAM_BASE_ADDR
#define YZ_SDRAM_FreeRTOS_MANAGER_RAM (20*1024*1024) ///20MB
#define YZ_SDRAM_SCREEN_RAM_BASE  (YZ_SDRAM_FreeRTOS_MANAGER_RAM_BASE+YZ_SDRAM_FreeRTOS_MANAGER_RAM) ///0XC1400000
#define YZ_SDRAM_SCREEN_RAM (800*480*2)           ///1.46484375MB
#define YZ_SDRAM_USER_DATA_LOAD_BASE (YZ_SDRAM_SCREEN_RAM_BASE+YZ_SDRAM_SCREEN_RAM) ///0XC14BB800
#define YZ_SDRAM_USER_DATA_LOAD (8*1024*1024)       ///8MB显存
#define YZ_SDRAM_DYMIC_PROGRAM_BASE (YZ_SDRAM_USER_DATA_LOAD_BASE+YZ_SDRAM_USER_DATA_LOAD) ///0XC1CBB800
#define YZ_SDRAM_DYMIC_PROGRAM (2*1024*1024)
#endif //STM32OSCOVER_YZ_CONF_H
